package com.aspose.cells;

abstract class zaol {
   protected double a;

   public double a() {
      return this.a;
   }

   protected double a(double var1) {
      return 0.0D;
   }

   protected void a(double var1, double[] var3) {
   }

   public boolean a(double var1, int var3, double var4) {
      double var13 = 0.0D;
      double[] var15 = new double[2];
      int var6 = var3;
      double var11 = var1;
      this.a(var1, var15);

      for(double var7 = var4 + 1.0D; var7 >= var4 && var6 != 0; --var6) {
         if (var15[1] == 0.0D) {
            var15[1] = Math.abs(-1.7976931348623157E308D);
         }

         var13 = var11 - var15[0] / var15[1];
         if (var13 <= 0.0D) {
            var13 = Math.abs(0.1D);
         }

         this.a(var13, var15);
         var7 = Math.abs(var13 - var11);
         double var9 = Math.abs(var15[0]);
         if (var9 > var7) {
            var7 = var9;
         }

         var11 = var13;
      }

      this.a = var13;
      return true;
   }

   public boolean a(double var1, double var3, double var5, double var7) {
      double var9 = var7 - var5;
      double var11 = 1.0E-11D;
      short var13 = 300;

      int var14;
      for(var14 = 0; this.a(var5) > var3 && this.a(var7) > var3 && var14 < var13; ++var14) {
         var5 = var7;
         var7 += var9;
      }

      while(this.a(var5) < var3 && this.a(var7) < var3 && var14 < var13) {
         var7 = var5;
         var5 -= var9;
         ++var14;
         if (var5 < 0.0D) {
            var5 = 0.0D;
         }
      }

      for(; Math.abs(var5 - var7) > var9 * var11 && var14 < var13; ++var14) {
         var1 = (var5 + var7) / 2.0D;
         if (this.a(var1) > var3) {
            var5 = var1;
         } else {
            var7 = var1;
         }
      }

      this.a = var1;
      return var14 != var13;
   }
}
